Position and heading error-correction method and apparatus for vehicle navigation systems

ABSTRACT

The present invention solves the problems of the prior art by providing methods for compensating for temperature-dependent drift of bias in a vehicle heading sensor of a dead reckoning vehicle positioning system. Specifically, the invention uses a Kalman filter to generate a calibration curve for the rate of heading sensor bias drift with temperature change. The Kalman filter calculates coefficients for a model of heading sensor bias drift rate versus temperature at each point where the vehicle is stationary. The bias drift rate calibration curve is then used to estimate a heading sensor bias periodically while the vehicle is moving. The invention further provides a method for using an aging time for temperature sensor bias drift rate to force convergence of the error variance matrix of the Kalman filter. The invention further provides vehicle navigational systems that utilize the methods of the present invention.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to navigational systems.Specifically, the invention relates to methods of compensating for biasdrift in gyroscopes used in vehicle navigational systems having a deadreckoning component, and subsequently correcting heading and positionerrors resulting from the gyroscope bias and gyroscope bias drift.

[0003] 2. Description of Related Art

[0004] Numerous automotive navigational systems have been developed inrecent years for such applications as providing real-time drivingdirections and providing emergency services for automobiles. Thesenavigational systems typically include a satellite-based positioningsystem or a “dead reckoning system” (DRS), or a combination of the two.In a dead reckoning system, the heading and position of a vehicle aredetermined using sensors such as gyroscopes and odometers. Typically,automobile navigational and positioning systems use a DRS having aninterface between a transmission odometer (for tracking speed anddistance) and a gyroscope (to track the vehicle's heading). Deadreckoning systems are often used in tandem with a satellite-basednavigational system such as a Global Positioning System (“GPS”).

[0005] The Global Positioning System (GPS) is a satellite-basedradionavigation system developed and operated by the U.S. Department ofDefense. GPS allows land, sea and airborne users to constantly determinetheir three-dimensional position, velocity, and time anywhere in theworld with a precision and accuracy far better than otherradionavigation systems currently available. The GPS consists of threesegments: user, space and control. The user segment consists ofindividual receivers, processors, and antennas that allow land, sea orairborne operators to receive GPS satellite broadcasts and compute theirprecise position, velocity and time from the information received fromthe satellites. Use of GPS receivers in automotive navigation, emergencymessaging, and tracking systems is now widespread. GPS receivers havebeen miniaturized to comprise only a few integrated circuits forindividual use.

[0006] The space segment consists of 24 satellites in orbit around theEarth and positioned so that at any time between five and eightsatellites are “in view” to a user at any particular position on thesurface of the earth. These satellites continuously broadcast bothposition and time data to users throughout the world.

[0007] The control segment consists of five land-based control andmonitoring stations located in Colorado Springs (master controlstation), Hawaii, Ascension Island, Diego Garcia, and Kwajalein. Thesestations monitor transmissions from the GPS satellites as well as theoperational status of each satellite and its exact position in space.The master ground station transmits corrections for the satellite'sposition and orbital data back to the satellites. The satellitessynchronize their internally stored position and time with the databroadcast by the master control station, and the updated data arereflected in subsequent transmissions to the user's GPS receiver,resulting in improved prediction accuracy.

[0008] In general, a minimum of four GPS satellites must be tracked bythe receiver to derive a three-dimensional position fix. The fourthsatellite is required to solve for the offset between the local timemaintained by the receiver's clock and the time maintained by the GPScontrol segment (i.e., GPS time); given this synchronization, thetransit time measurements derived by the receiver can be converted torange measurements and used to perform triangulation. Navigationalsystems based solely on GPS, therefore, generally do not work well indense city environments, where signal blockage and reflection by tallbuildings, in addition to radio frequency (RF) interference, oftenoccurs. GPS accuracy also suffers in situations where the GPS satellitesare obscured from the vehicle's field of view, e.g. when the vehicle isin a tunnel or dense foliage environments.

[0009] In combination systems, such as navigational systems having bothDR and GPS components, heading and position data from each component areused to compensate for measurement errors occurring in the components.The dual component system also provides a backup system in the eventthat one component fails, for example, DRS provides continuous headingand position information even when the GPS satellites are obscured fromthe view of the vehicle, and thus no reliable GPS information isavailable.

[0010] Dead reckoning systems, however, are only as accurate as theircomponent sensors, which are often low-cost and low-fidelity. Forexample, the gyroscopes typically used in dead reckoning systems arevibrational gyroscopes, which are known to have severe performancelimitations. The performance of low-cost gyroscopes is directlycorrelated to gyroscope bias, a measure of a gyroscope's deviation froman ideal or perfect gyroscope, and bias drift, the rate of change of thebias resulting from changes in environmental conditions over time.Gyroscope bias is determined by the gyroscope's reading at zero angularrate, which a perfect gyroscope would read as zero. Gyroscope biases canbe as large as several degrees per second for automotive-qualitygyroscopes.

[0011] In the case of the commonly used vibrational gyroscope, avibrating beam is used to determine heading changes. Over time, thevibrational characteristics of the beam change and these changes resultin changes in the measured angular rate, even when there is no rotationof the beam, thus producing the gyroscope bias drift. Significantly,bias drift produces a position error that grows quadratically withdistance-traveled for a vehicle moving at a constant speed.

[0012] The most significant factor in gyroscope bias drift istemperature change. Changes of no more than a fraction of a degree intemperature can produce significant shifts in the gyroscope bias. Forexample, a bias of only 0.055 deg/sec produces a position error of 5% ofdistance-traveled, or 50 meters, after 1 kilometer of travel and 25% ofdistance-traveled, or 1.25 kilometers, after 5 kilometers of travel.While the position error can be compensated for using GPS underconditions where a minimum of four satellites are in view of thevehicle, the error cannot be effectively compensated for during periodsof GPS outage such as occur in tunnels or dense foliage environments. Itis therefore desirable to have methods for correcting heading andposition errors in dead reckoning systems resulting from the temperaturedependence of gyroscope bias and gyroscope bias drift.

[0013] Compensation for temperature-dependent bias drift is furthercomplicated because the system exhibits a hysteresis effect. In ahysteretic system, the dependent variable (gyroscope bias) is not only afunction of the independent variable (temperature), but is also afunction of the time history of the dependent variable. Therefore, thesystem is not perfectly reversible. If a gyroscope is subjected to atemperature change and then subjected to a temperature change of thesame rate and magnitude in the reverse direction, the temperaturedependence of the bias can be different along the forward and reversepaths.

[0014] Methods for correcting heading and position errors in vehiclenavigation systems, including methods of compensating for gyroscopebias, are known in the art. Most existing methods, however, useestimated positions determined by the dead reckoning or GPS componentsto correct for gyroscope bias. Other existing methods rely onpredetermined calibration curves for gyroscope bias and bias drift.Further alternative existing methods are useful only for high-endgyroscopes that are too expensive for routine use in consumer automotivepositioning systems.

[0015] U.S. Pat. No. 3,702,477 to Brown teaches a Kalman filter methodfor estimating the gyroscope bias of an aircraft-quality inertialmeasurement unit comprising at least three gyroscopes and threeaccelerometers, using position error measurements constructed from theNavy Navigation Satellite System, a predecessor to GPS.

[0016] U.S. Pat. No. 3,702,569 to Quinn et al. discloses a hardwaremodification for removing the relatively large, fixed offset thatappears in high-precision gyroscopes. The modification is applicable toprecision gyroscopes typically costing several thousand dollars, ratherthan the low-cost gyroscopes used in vehicular navigation andpositioning systems.

[0017] U.S. Pat. No. 4,303,978 to Shaw et al. teaches one-time factorycalibration of high-end gyroscopes based upon a predeterminedcalibration curve. Such methods are not useful for low-cost gyroscopeswhere calibration curves are not readily determinable.

[0018] U.S. Pat. Nos. 4,537,067 and 4,454,756 to Sharp et al. teachcompensation for temperature-dependent gyroscope bias drift bycontrolling the temperature of the gyroscope environment and estimatinggyroscope bias using INS position data.

[0019] U.S. Pat. No. 4,987,684 to Andreas et al. teaches a method ofcompensating for gyroscope drift in an inertial survey system by usingposition updates generated by a Kalman filter method.

[0020] U.S. Pat. No. 5,194,872 to Musoff et al. teaches a method ofcompensating for gyroscope bias in an aircraft inertial navigationsystem (INS) by using output from a set of redundant gyroscopes tocorrelate bias.

[0021] U.S. Pat. No. 5,278,424 to Kagawa teaches a method ofcompensating for gyroscope using position information obtained from adigital map database.

[0022] U.S. Pat. No. 5,297,028 to Ishikawa and U.S. Pat. No. 5,527,003to Diesel et al. teach a method of compensating fortemperature-dependent gyroscope bias by determining and applying acalibration curve for gyroscope bias as a function of temperature.

[0023] U.S. Pat. No. 5,416,712 to Geier et al. discloses use of a Kalmanfilter method for correcting future heading and position error growth,based upon an assumption of constant gyroscope bias drift rate betweenposition updates.

[0024] U.S. Pat. No. 5,505,410 to Diesel et al. and U.S. Pat. No.5,574,650 to Diesel teach a method for correcting the east component ofgyroscope bias from measurements of cross-track velocity error made whenan aircraft is taxing.

[0025] U.S. Pat. No. 5,543,804 to Buchler et al. teaches a method forcombining GPS and inertial navigation systems data for improved attitudedetermination accuracy that incorporates a Kalman filter method forestimating the gyroscope biases of the INS.

[0026] U.S. Pat. No. 5,583,774 to Diesel teaches calibration ofgyroscope bias using GPS position and velocity data.

[0027] There remains a need in the art for methods compensating fortemperature-dependent gyroscope bias drift in low-cost, vehicularnavigation and positioning systems, and for the position and headingerrors that result from gyroscope bias and gyroscope bias drift, as wellas devices incorporating such compensation methods.

SUMMARY OF THE INVENTION

[0028] The present invention solves the problems of the prior art byproviding methods and apparatuses for compensating fortemperature-dependent drift of bias in a heading sensor used in a deadreckoning system for providing a vehicle heading and position.

[0029] In a first aspect, the invention provides methods that use aKalman filter to generate a calibration curve for the rate of headingsensor bias drift with temperature change. The Kalman filter calculatescoefficients for a model of bias drift rate versus temperature at eachpoint where the vehicle is stationary. The bias drift rate calibrationcurve is then used to estimate a heading sensor bias periodically whilethe vehicle is moving. The invention further provides a method for usingan aging time for temperature sensor bias drift rate to forceconvergence of the error variance matrix of the Kalman filter.

[0030] In a second aspect, the invention provides vehicle navigationalsystems that utilize the heading sensor bias drift rate estimated by themethods of the present invention to correct vehicle headings andpositions calculated by the dead reckoning system. Preferred embodimentsof the navigational systems of the invention comprise a heading sensor,a distance-traveled sensor, a temperature sensor, and a DRS thatreceives heading and position data from the heading sensor, thedistance-traveled sensor, and the temperature sensor, and acomputational means for estimating the heading sensor bias drift rate.In preferred embodiments, the heading sensor is a gyroscope. Inparticularly preferred embodiments, the heading sensor is a low-costgyroscope.

[0031] In a third aspect, the invention provides vehicle navigationalsystems that utilize the methods of the present invention in conjunctionwith a vehicle reference position system to correct vehicle headings andpositions determined by the dead reckoning component and the vehiclereference position system. In preferred embodiments, the vehiclereference position system is a satellite-based vehicle positioningsystem. In particularly preferred embodiments, the vehicle referenceposition system is the global positioning system.

[0032] These as well as other features and advantages of the presentinvention will become apparent to those of ordinary skill in the art byreading the following detailed description, with appropriate referenceto the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0033] Exemplary embodiments of the present invention are describedherein with reference to the drawings, in which:

[0034]FIG. 1 illustrates a vehicle in which a DR system has beeninstalled.

[0035]FIG. 2 is a graphical illustration of the temperature dependenceof two representative gyroscopes.

[0036]FIG. 3 is a graphical illustration of error induced in biasmeasurements by sensor quantization.

[0037]FIG. 4 is an illustration of a sample test data of anuncompensated open loop performance.

[0038]FIG. 5 is an illustration of the resulting compensated trajectory.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0039] The present invention provides methods for compensating fortemperature-dependent drift of bias in a heading sensor. In preferredembodiments, a Kalman filter is used to generate a calibration curve forthe rate of bias drift with temperature change. In a further preferredembodiment, the invention provides a method for using an aging time fortemperature sensor bias drift rate to force convergence of the errorvariance matrix of the Kalman filter. The invention further providesvehicle navigational systems that utilize the methods of the presentinvention.

[0040] As used herein, the term “vehicle” refers to any land-, air-, orwater-based transportation mechanism, including, but not limited toautomobiles, airplanes, helicopters, and boats.

[0041] As used herein, the term “gyroscope bias” refers to a measure ofa gyroscope's deviation from an ideal or perfect gyroscope, and isdetermined by the gyroscope's reading at zero angular rate, which aperfect gyroscope would read as zero.

[0042] As used herein, the term “bias drift” refers to the tendency ofthe gyroscope bias to change over time in response to environmentalchanges. Bias drift is affected by factors including temperaturechanges, vehicle acceleration, local magnetic effects, and hours ofusage.

[0043] As used herein, the term “GPS time” refers to a measure of timemaintained by the GPS master control station. The term “GPS second”refers to a particular measure of GPS time. GPS satellites maintain aninternal time that is calibrated with transmissions of GPS time in GPSseconds from the master control station. As used herein, the term “timeoffset” refers to the difference between GPS time and the timemaintained by a GPS processor in a vehicle navigational system, which isnot continuously synchronized with GPS time.

[0044] As used herein, the term “computational means” refers to acomputer hardware or software based element for performing formulas,equations or steps of an algorithm.

[0045] Standard linear algebra conventions and terminology are usedthroughout the specification. A uncapitalized bold letter indicates avector (e.g. x), a capitalized bold letter indicates a matrix (e.g. P),a superscript T indicates the transpose of the vector or matrix (e.g.x^(T), P^(T)), and a negative one superscript indicates the inverse of amatrix (e.g. P⁻¹).

[0046]FIG. 1 illustrates a particularly preferred embodiment of anavigational system 2 for a vehicle 4 comprising a heading sensor 6, adistance-traveled sensor 8, a temperature sensor 9, a DRS 12 thatreceives heading and position data from the heading sensor 6, thedistance-traveled sensor 8, and the temperature sensor 9. In a preferredembodiment, navigational system 2 further comprises a vehicle referenceposition system 10. In a further preferred embodiment, navigationalsystem 2 further comprises an application specific device (“ASD”) 14that receives heading and position data from the DRS 12. The inventivemethods provided herein, however, may be used with any vehiclenavigational system 2 having a DRS and do not require that navigationalsystem 2 include a vehicle reference position system 10 or an ASD 14.

[0047] Heading sensor 6 may be located anywhere in vehicle 4.Preferably, heading sensor 6 is a gyroscope. When heading sensor 8 is agyroscope, the axis of the gyroscope that measures angular velocity(“sensitive axis”) must be oriented toward the local vertical to sensethe rate of change in heading. If the sensitive axis of the gyroscope ishorizontally oriented, the gyroscope would measure the pitch rate ofvehicle 4 rather than heading change. The invention is preferably usedwith low-cost gyroscopes such as those available from Murata,Matsushista/Panasonic, and Tokin. Gyroscope output is typically analogand in. units of voltage. The gyroscope has a bias, or an offset readingat zero angular velocity, that is time dependent.

[0048] Distance-traveled sensor 8 is preferably an odometer 18; however,the invention is not limited to such an embodiment. There are twofundamental types of odometers 18 known to those in the art: reluctancesensors, which use passive magnetic flux change to measure velocity, andHall effect sensors, which are active and detect wheel rotations. Thepreferred system and method will work with any pre-installed odometer 18in vehicle 4; however, the invention preferably uses a reluctancesensor-based odometer. Odometer 18 output is typically in units of pulsecounts when a Hall effect sensor is used. Each pulse in the pulse countrefers to a specific amount of wheel rotation, preferably {fraction(1/24)}^(th) to {fraction (1/48)}^(th) of the circumference of a tire.Those of skill in the art will recognize that alternative velocity ordistance-traveled sensors, including but not limited to Doppler radarinstalled underneath vehicle 4 or one or more lateral accelerometers,would be equally useful in the invention.

[0049] Temperature sensor 9 may be any commercially availabletemperature sensor. Preferably, temperature sensor 9 has a resolution of0.1 degrees C. The temperature sensor 9 is preferably positioned inclose proximity to the heading sensor 6, and is preferably notpositioned near an element of the vehicle that is subject to rapidchanges in temperature, such as the engine. Most preferably, thetemperature sensor 9 is located within the housing of the heading sensor6. However, as most low-cost gyroscopes used in automotive navigationalapplications are bought off the shelf, and the warranty of the gyroscopemay be voided by opening the housing, placement of the temperaturesensor 6 in a gyroscope housing may not be feasible. In this situation,it is desirable to have the temperature sensor positioned in the samehousing as that of the vehicle reference position system 10. The outputof temperature sensor 9 is typically in units of volts.

[0050] Preferably, vehicle reference position system 10 comprises asatellite-based vehicle positioning system, including systems based onGPS, GLONASS, or Galileo satellites. Most preferably, vehicle referenceposition system 10 comprises a GPS system. More specifically, vehiclereference position system 10 preferably comprises a GPS antenna 20 and aGPS receiver 22 in communication with GPS antenna 20. Vehicle referenceposition system 10 also preferably comprises a GPS processor 24. GPSsatellites 26 transmit heading and position data information to vehiclereference position system 10. Satellite 26 transmissions are received byGPS antenna 20 and transmitted to GPS receiver 22. Data from four GPSsatellites 26 is typically required for GPS processor 24 to determine athree-dimensional position fix (latitude, longitude, and altitude) andvelocity for vehicle 4. Data from three of the GPS satellites 26 is usedto triangulate the position of vehicle 4, while data from the fourthsatellite 20 provides a time offset.

[0051] DRS 12 preferably comprises an analog-to-digital converter (“A/Dconverter”) 27, a DR processor 28, a heading sensor interface 30, atemperature sensor interface 31, a distance-traveled sensor interface32, an ASD interface 33, and a memory 34. DRS 12 also preferablycomprises a bias drift rate filter 38, a heading filter 42, and aposition filter 44. Preferably distance-traveled sensor interface 24 andgyroscope interface are ports. DRS 12 receives heading change data fromheading sensor 6 via heading sensor interface 30 and distance-traveleddata from the distance-traveled sensor 8 via distance-traveled sensorinterface 32. When vehicle navigational system 2 includes a referenceposition system 10, DRS 12 also receives reference heading and positiondata from reference position system 10. In embodiments where referenceposition system 10 is a GPS system, DRS 12 also receives referenceheading and position data from GPS receiver 22.

[0052] DRS 12 converts the heading sensor output to a heading change inunits of degrees or radians, the distance-traveled sensor 18 output tounits of meters, and the temperature sensor 9 output to units of degreesC. DRS 12 then integrates GPS heading and position data with heading andposition data received from heading sensor 6 and distance-traveledsensor 8 to determine the current heading and position of vehicle 4. DRprocessor 28 also transmits the integrated heading and position data toASD 12 via ASD interface 34. In a preferred embodiment, DRS 12 ispreferably integrated into GPS receiver 22. In such embodiments, GPSreceiver 22 preferably further comprises an analog-to-digital converterfor converting the output of heading sensor 6 and distance-traveledsensor 8 to digital signals.

[0053] For automotive vehicle navigation applications, ASD 12 mayinclude, but is not limited to, a map-matching and display unit forproviding driving directions or a system for transmitting a vehicle'sposition to an emergency call service (“ECS”). The invention is notlimited to these embodiments, however, and those of skill in the artwill recognize the utility of the invention for any application thatrequires heading and position data. Preferably, ASD 12 includes aseparate processor 36. In a particularly preferred embodiment, ASDprocessor 36 may be embedded in GPS receiver 22. In an alternativepreferred embodiment, the GPS processor 24 may be embedded in ASD 14.

[0054] ASD 14 may provide an interface to a cellular phone or radio forestablishing a communication link to a nearby service center, emergencycall center or other third party that requires tracking of vehicle 4. Inthese embodiments, the vehicle 4 transmits accumulated heading andposition data, along with heading sensor bias data, to the servicecenter, emergency call center or other third party. The methods of theinvention are then used offline in non-real-time to determine acorrected heading and position for vehicle 4. Examples of such non-realtime systems include existing GPS applications such as the GeneralMotors OnStar System.

[0055] Two separate periodic time scales are preferably used in themethod: one having a constant period for performing updates irrespectiveof whether the vehicle 4 is in motion or stationary and one having avariable length period defined by the time between vehicle 4 stationarypoints for performing updates when the vehicle 4 is stationary. In theequations that follow, the constant period time scale is indicated bythe subscript j, while the stationary period time scale is indicated bythe subscript k. Preferably the constant period time scale is 1 Hz.

[0056] Heading sensor 6 bias drift rate is updated at stationary points,while the heading and position of vehicle 4 are preferably updatedcontinuously using the constant period time scale. In an alternativepreferred embodiment, the heading of vehicle 4 is updated continuouslyusing the constant period time scale and the position of vehicle 4 isupdated only when the accumulated heading change has reached a minimumvalue, in order to preserve computational cycles. In these embodiments,the position of vehicle 4 is preferably updated when the heading changeis between about 0.1 and about 2.0 degrees, more preferably when theheading change is between about 0.2 and about 1.0 degrees, and mostpreferably when the heading change is about 0.5 degrees.

[0057] The initial step of a preferred method is transmitting headingdata from heading sensor 6 (ΔH_(S)), position data fromdistance-traveled sensor 8 (P_(S)), and temperature data fromtemperature sensor 9 (T_(S)) to DRS 12, via heading sensor interface 30,distance-traveled sensor interface 32, and temperature sensor interface31 respectively. DR processor 28 then converts the data received fromanalog data (ΔH_(S), P_(S), T_(S)) to digital data (ΔH_(D), P_(D),T_(D)) having units usable by the correction method. Conversion of thedata from an analog to a digital signal results in a quantization error,which is accounted for in the heading sensor bias update procedure, asdiscussed below.

[0058] The method next uses a first computational means to determinewhether the vehicle is stationary. Several methods are useful fordetermining whether the vehicle is stationary. If a Hall-effect sensoris used in the odometer, a single zero pulse count is a reliableindication of a stationary condition. If a reluctance sensor is used inthe odometer, the odometer can read zero at very low speed (when thevehicle may be turning), and thus more than one successive zero readingis required to indicate a stationary condition. The number of successivezero readings required is dependent on the sensor used, the driver, andthe driving conditions; however, for sensors commonly used in automotiveapplications, five to ten successive zero readings is sufficient toindicate a stationary condition. The number of successive zero readingsrequired should be selected based on a balance between a conservativeestimate that may miss short duration stationary points and an overlyoptimistic estimate that may indicate more stationary periods thanactually occur. Alternatively, the method taught in pending U.S. patentapplication Ser. No. 08/834,966, filed Apr. 7, 1997, entitled “Methodsof Gyro Bias Estimation Using GPS,” which is incorporated herein byreference, can be used. That method uses GPS measurements collected overa period of at least one second to determine whether the vehicle isstationary.

[0059] If the vehicle is stationary, a second computational means isused to update the heading sensor bias drift rate (r) and calculate atemperature-based calibration curve for heading sensor bias. Preferably,the second computational means is a heading sensor bias drift ratefilter 34 (hereinafter “bias drift rate filter 34”). As input, biasdrift rate filter 34 receives the heading sensor reading while thevehicle is stationary (ΔH_(D)(t_(k))) and the temperature reading atthat point (T_(D)(k)). Bias drift rate filter 34 is preferably a Kalmanfilter, as the Kalman filter can appropriately model both thequantization error associated with the analog to digital conversion ofheading sensor data, distance-traveled sensor data and temperaturesensor data, and the expected stability of the bias from pastmeasurements.

[0060] The discrete Kalman filter is a set of mathematical equationsthat provides an efficient, recursive, computational solution of theleast-squares method with samples at discrete time intervals. The Kalmanfilter allows for estimations of past, present and future events. TheKalman filtering process is well-known by those in the art, and wasinitially described in Kalman, R. E., “A New Approach to LinearFiltering and Prediction Problems,” J. Basic Eng., March, 1960, pp.35-45. The standard equations used in the Kalman filter are:

G _(n) =P _(n) ^(T)(H _(n) P _(n) *H _(n) ^(T) +V _(n))⁻¹

P _(n) =P _(n) *−G _(n)(H_(n) P _(n) *H _(n) ^(T) +V _(n))G _(n) ^(T)

x _(n) =x _(n) ′+G _(n)(y _(n) ŷ _(n)′)

x _(n+1)=Φ_(n) x _(n)

P _(n)*=Φ_(n−1) P _(n)Φ^(T) _(n−1) +Q _(n−1)

[0061] where

[0062] Δt=time increment between t_(n) and t_(n+1)

[0063] Φ_(n)=state transition matrix

[0064] x_(n)=true state at time t_(n)

[0065] x_(n)=optimum estimate of x after using all of the measured datathrough y_(n−1)

[0066] x_(n)′=optimum estimate of x after using all of the measured datathrough y_(n)

[0067] G_(n)=Kalman gain matrix

[0068] y_(n)=measurement at time t_(n)

[0069] ŷ_(n)′=H_(n)x_(n)

[0070] P_(n)*=covariance matrix of the estimation error (x_(n)′−x_(n))σ*

[0071] P_(n)=covariance matrix of the estimation error (x_(n)′−x_(n))

[0072] H_(n)=measurement matrix

[0073] V_(n)=covariance matrix of the measurement error by δy_(n)

[0074] Q_(n)=covariance matrix of the response of the states to allwhite noise driving functions.

[0075] Using initial estimates for the state vector (x₀) and the errorcovariance matrix (P₀), a new state vector can be estimated at anysubsequent time. Numerous publications detail the application of theKalman filter. See, e.g., Haykin, Adaptive Filter Theory 2d. ed. (1991).As the Kalman filter approach is well understood by those of skill inthe art and will not be discussed farther herein.

[0076] Drift Modeling Algorithm

[0077] When the vehicle is determined to be stationary, the gyroscopebias is equivalent to the gyroscope reading. The gyroscope bias driftrate at the current stationary period ((r^(m))_(k)) is calculated bydividing the change in measured bias between stationary periods by thechange in temperature between stationary periods, where the currentstationary period is represented by k, and the previous stationaryperiod is represented by k−1 as shown in Equation 1 below:

(r ^(m))_(k)=(b _(k) −b _(k−1))/ΔT  (1)

[0078] where ΔT=T_(k)−T_(k−1); T_(k) denotes the measured temperature atthe current stationary period t_(k); T_(k−1) denotes the measuredtemperature at the previous stationary period t_(k−1); b_(k) denotes thegyroscope bias estimate at the current stationary period t_(k); andb_(k−1) denotes the gyroscope bias estimate at the previous stationaryperiod t_(k−1).

[0079] The gyroscope bias rate measurement is considered valid at theaverage of these two temperature measurements, T_(avg):

T _(avg)=(T _(k) +T _(k−1))/2  (2)

[0080] The Kalman filter algorithm preferably models the temperaturedependence of the gyroscope bias drift rate as a second order polynomialin (T_(avg)−T₀) where T₀ is a reference temperature in the gyroscope'sexpected operating range (e.g. 40 degrees Celsius). The referencetemperature is dependent on the sensor used, and preferably is selectednear the midpoint of the expected operating temperature range of thegyroscope, since excessive departures from the reference temperature mayreduce the applicability of the model (i.e., lead to selection of ahigher order polynomial, which will increase the computationalcomplexity). A second order polynomial represents a reasonablecompromise between fidelity and complexity. While higher order modelsmay represent the temperature curve more precisely, the increasedcomplexity attendant with the increased fidelity adds to thecomputational burden on the system. The second order temperature modelis shown in Equation 3:

r ^(m) =r ₀ +r ₁(T_(avg) −T ₀)+r ₂(T _(avg) −T ₀)²  (3)

[0081] The coefficients of the second order polynomial, r₀, r₁, and r₂are the components of the state vector for the Kalman filter, as shownin Equation 4.

x ^(T) =[r ₀ r ₁ r ₂]  (4)

[0082] Thus, as opposed to the methods of the prior art, the presentinvention provides for adaptation of a non-static gyroscope biascompensation curve to stabilize the gyroscope bias drift.

[0083] The measurement gradient vector, h, for the Kalman filter relatesthe measurements of gyroscope bias drift rate to the state vectorestimate, and is determined using Equation 5:

r ^(m) =h ^(T) x  (5)

[0084] Therefore, the measurement gradient vector is:

h ^(T)=[1(T _(avg) −T ₀)(T _(avg) −T ₀)²]  (6)

[0085] The rate measurement error variance, σ_(rm) ², is computed usingEquation 7 below:

σ_(rm) ²=(σ_(k) ²+σ_(k−1) ²+((r ^(m))²σ_(Q) ²))/ΔT²  (7)

[0086] where σ_(k) ² and σ_(k−1) ² are the error variances associatedwith the gyroscope bias estimates at the current stationary period andthe previous stationary period respectively, and σ_(Q) ² is the errorvariance associated with the temperature sensor quantization (Q²/3,where Q is the quantization level). The value of the error varianceassociated with the temperature quantization is based on a uniformprobability density function (i.e., all errors less than thequantization level are equally likely).

[0087] The error covariance matrix associated with the curve fitpolynomial coefficients, P, is initialized to a “steady state” value,corresponding to no knowledge of the temperature coefficients:$\begin{matrix}{P_{0} = {{{diag}\{ {\sigma_{0}^{2}\quad \sigma_{1}^{2}\quad \sigma_{2}^{2}} \}} = \begin{bmatrix}\sigma_{0}^{2} & 0 & 0 \\0 & \sigma_{1}^{2} & 0 \\0 & 0 & \sigma_{2}^{2}\end{bmatrix}}} & (8)\end{matrix}$

[0088] P represents the covariance matrix computed and implemented bythe Kalman filter algorithm. The elements of the error covariance matrixP represent the uncertainty level associated with the curve fitcoefficients, r₀, r₁, and r₂. The diagonal elements of error covariancematrix P represent the uncertainty levels associated with the estimatesderived by the Kalman filter, and the off-diagonal elements representthe correlation between the error in a given estimate and the error in aseparate estimate. The elements of the error covariance matrixpreferably have small values, as this indicates a high confidence levelin the estimates. The diagonal elements of the initial error covariancematrix P₀ represent the statistical characterization of the temperaturecoefficients of an uncompensated gyroscope. The diagonal elements of theinitial error covariance matrix P₀ vary from gyroscope to gyroscope, andpreferably are determined by laboratory testing.

[0089] The algorithm of the present invention includes a novel methodfor performing forward estimates of the error variance in time. Thismethod assumes an a priori “aging time” (τ) that represents the expectedtime interval over which the temperature coefficients fill remainrelatively constant. Preferably, the aging time is based on experiencewith a particular gyroscope; however, such experience is not necessaryfor the method of the invention, as the method will successfully adaptfor a reasonable assumption as to aging time. In embodiments where theaging time is not based on experience, the aging time should be selectedusing conservative rules, i.e., a low value for τ should be selected toforce the invention to revise the model more frequently, therebyhastening convergence of the aging time.

[0090] The error variance propagation is calculated using Equation 9:

P _(k) =P _(k−1)+(Δt/τ)ΔP  (9)

[0091] where Δt is the is the time interval over which the covarianceinformation is propagated (t_(k)−t_(k−1)); ΔP=P₀−P_(k−1); and τ is theaging time associated with the coefficients.

[0092] The factor (Δt/τ) in Equation (9) represents a Taylor seriesapproximation to an exponential in (Δt/τ) as the state transition matrixis a negative exponential in Δt/τ. While the approximation of thecovariance matrix can theoretically have a value of (Δt/τ) greater thanone, this would represent a decay to a negative value, and therefore anupper limit of unity is imposed on the value of (Δt/τ).

[0093] The aging time τ is not known a priori with confidence, andtherefore the method adapts the aging time over time. Upper and lowerlimits for the aging time are imposed, e.g. 2 days for the minimum and10 days for the maximum. The aging time is adapted using a statisticthat indicates the consistency of the polynomial curve fit to thegyroscope bias measurement data. This statistic, Z² _(norm), iscalculated using Equation 10:

Z ² _(norm) =Z ²/σ_(res)=(r _(m) −h ^(T) x)² /h ^(T) Ph+σ _(rm) ²  (10)

[0094] where z is the residual of the Kalman filter, r^(m)−h^(T)x, andσ² _(res)=h^(T)Ph+σ_(rm) ² represents the variance associated with theresidual. The residual, z, represents the difference between thegyroscope bias measurement and the expected measurement of the Kalmanfilter.

[0095] The normalized residual square represents the discrepancy of themeasured gyroscope temperature rate from the polynomial curve fitdivided by expected uncertainty level of the residual. If thetemperature dependence of the gyroscope bias drift rate is well modeledby the polynomial curve fit, the residual will be small. A persistentlylarge value, on the other hand, is indicative of model error. Themagnitude of the residual is defined in terms of a Gaussiandistribution, i.e., the error is distributed in the familiar bell curve.Under the assumption of a Gaussian distribution, 67% of the values ofthe residual should be less than 1, 95% should be less than 4 and 99%should be less than 9. A value for the residual greater than 9 isunlikely to be generated by the current model because of the Gaussianassumption, i.e., it has a probability of 1% associated with it.

[0096] The validity of the polynomial model is tested using a modelvalidity parameter, p. The model validity parameter is calculated fromthe average value of the normalized squared residuals across somenumber, N, of stationary periods of the DR system. As shown in Equation11:

p=(Σz ² _(norm))/N for N≧N _(min)  (11)

[0097] where N is the number of stationary periods. The number ofstationary periods must reach some minimum value, N_(min), for p to be avalid statistic. Preferably N_(min) is about 10. Until the number ofstationary periods equals N_(min), the aging time is not adapted. It isdesirable for the validity parameter p to have a value of one. When p ismuch less than one, the model is overly conservative, and therefore theaging time should be decreased. Conversely, when p is much larger thanone, the model is overly optimistic, and the aging time should beincreased.

[0098] The change in the aging time, Δτ, required for convergence of themodel validity parameter, p, is calculated from the following set ofequations. First, the method determines the variance change that isnormally produced in propagating the covariance using the approximationto the state transition matrix shown in Equation 9:

δΔP=−(Δτ/τ)ΔP  (12)

[0099] where δΔP is the increment to the variance change caused by Δτ.The method then relates the variance change to the model validitystatistic p, which is computed using Equation 13. Equation 12 ispre-multiplied by the transpose of the measurement gradient vector andpost-multiplied by the measurement gradient vector, producing Equation13:

h ^(T) δΔPh=−(Δτ/τ)h ^(T) ΔPh  (13)

[0100] The left-hand side of Equation 12 represents the increase to theresidual variance, δ² _(res)=h^(T)Ph+δ_(rm) ², corresponding to thevariance increase, δΔP . Equating the residual variance increase to thedesired change in the statistic p, in order to cause the model for p toconverge to a value of one, gives the following result:

Δτ=τ(1−p)/h ^(T) ΔPh  (14)

[0101] The increment to the aging time expressed by Equation 14 willproduce a value of p equal to one.

[0102] Drift Compensation Algorithm

[0103] While the vehicle is moving and/or turning, Equation 15 is usedto update the gyroscope bias estimate:

b _(j) =b _(j−1) +h ^(T) x  (15)

[0104] where the measurement gradient vector h is computed using thecurrent, measured, average temperature,(T_(avg))_(j)=(T_(j)+T(t_(k)))/2, and the coefficients r₀, r₁, and r₂calculated in the bias drift rate filter 34.

[0105] Because the coefficients of the polynomial curve fit are notknown perfectly, an error variance is assigned to the temperaturecompensation and used to propagate the variance associated with thegyroscope bias estimate. The error variance for the temperaturecompensation is h^(T)Ph based on the model for temperature instability.The gyroscope bias variance propagation equation then is:

(σ² _(b))_(j)=(σ² _(b))_(j−1) +h ^(T) Ph  (16)

[0106] Equation 16 thus incorporates the effects of improved gyroscopebias calibration as P is reduced by the application of the model. Asmore and more bias measurements are made, and the model parameters (x)are updated, the covariance matrix P continues to reduced.

[0107] The estimated bias calculated in Equation 15 is then used in athird computational means to calculate a heading and positioncorrection, using Equations 17-22. First a corrected heading (H_(corr))and a change in heading (ΔH) are calculated as shown in Equations 17-18:

H _(corr,j) =H _(corr,j−j) +b _(j)  (17)

ΔH _(j) =H _(corr,j) −H _(corr,j−1)  (18)

[0108] Next, corrected east and north position changes, Δp_(ecorr) andΔp_(ncorr) respectively are calculated in a fourth computational meansusing Equations 19-20:

Δp _(ecorr,j) =Δp _(ecorr,j−1) +Δp _(e,DRS,j) ΔH _(corr,j)/2  (19)

Δp _(ncorr,j) =ΔP _(ncorr,j−1) +Δp _(n,DRS,j) ΔH _(corr,j)/2  (20)

[0109] where ΔP_(e,DRS) is the change in east position calculated by thedead reckoning system and Δp_(n,DRS) is the change in north positioncalculated by the dead reckoning system.

[0110] Finally, latitude (L) and longitude (λ) are calculated as shownin Equations 21-22:

L=L−Δp _(ncorr,j) /R _(e)  (21)

λ=λ−Δp _(ecorr,j)/(R _(e)cosL)  (22)

[0111] where R_(e) is the Earth's equatorial radius.

[0112] In an alternative embodiment, the corrected bias and thecorrected dead reckoning heading and position can be used in conjunctionwith a global positioning system to provide further corrections to thevehicle heading and position, using the methods described in co-owned,co-pending application 09/______, Attorney Docket number 99,989, whichis incorporated herein by reference. In these methods, the corrected DRSheading calculated by applying the heading sensor bias estimate to theheading calculated by the DRS is combined in a fifth computational meanswith a heading provided by the global positioning system to determine anintegrated vehicle heading. Preferably, the fifth computational means isa Kalman filter. An integrated vehicle position is then calculated in asixth computational means using the integrated vehicle heading, thecorrected DRS position calculated by applying the heading sensor biasestimate to the position calculated by the DRS, and the globalpositioning system position. Preferably the sixth computational means isa Kalman filter.

[0113] The invention is more fully illustrated in the followingExamples. These Examples illustrate certain aspects of the invention.These Examples are shown by way of illustration and not by way oflimitation.

EXAMPLE 1 Temperature Dependence of Gyroscope Bias

[0114] The temperature dependence of the bias of two Murata ENV-05D-52gyroscopes was tested by exposing the gyroscopes to a range oftemperature from −28.5 degrees C. to 81.5 degrees C. The results areshown in Table 1 and illustrated in FIGS. 2 and 3. TABLE 1 GYRSOSCOPE 1GYROSCOPE 2 TEMP. ° C. (bias in 0.02 deg./sec) (bias in 0.02 deg./sec)−28.5 30 −27.5 −43 −18.0 −17.5 −43 −7.5 −37 −7.0 28 2.5 32 3.5 −25 12.034 13.5 −19 22.5 48 24.0 −4 32.0 46 34.5 8 41.5 39 43.0 23 51.0 27 51.546 61.0 57 61.5 19 70.5 58 71.5 18 80.5 82 81.5 30

[0115] The effect of sensor quantization on the gyroscope biasmeasurement was demonstrated by repeatedly measuring the bias for agyroscope at a single temperature. The results of this test forgyroscope 2 are given in Table 2. TABLE 2 TEMP. GYROSCOPE 2 ° C. (BIAS)32.5 46 36.5 46 38.5 44 40.0 44 40.5 43 41.0 42 41.5 41 41.5 41 41.5 4041.5 40 41.5 40 41.5 40 42.0 40

EXAMPLE 2 Temperature-Dependent Bias Drift Correction

[0116] To demonstrate the effectiveness of the invention, the algorithmwas tested using a Toyota Camry test vehicle with an integrated GPS/DRsystem, including a Murata low cost vibrational gyroscope and aninterface to the vehicle's odometer. The vehicle traveled directly westfor approximately 3 kilometers with the GPS antenna disconnected. Thevehicle did not stop during the test run. Uncompensated test data areshown in FIG. 1.

[0117] The temperature increase during the test was relatively uniform.Bias drift was compensated using a polynomial curve fit derived off-linein laboratory tests of the gyroscope bias drift rate resulting from auniform temperature increase over the expected operating temperaturerange of the gyroscope. Over the range of temperatures present duringthe test run, the gyroscope bias drift rate was effectively constant ata value of approximately 0.037 deg/sec/deg-C.

[0118] As illustrated in FIG. 4, significant cross-track error developedin the uncompensated system during the test run. The uncompensatedcross-track error was 9.7% of the total distance-traveled. The dominantcontributor to this error growth was gyroscope bias drift. The derivedheading and gyroscope bias estimates were compensated off-line using thealgorithm of the current invention in an Excel spreadsheet. FIG. 5displays the resulting compensated trajectory. The significant reductionof cross-track position error to 2.4% of total distance-traveleddemonstrates the effectiveness of the invention.

[0119] A preferred embodiment of the present invention has beenillustrated and described. It will be understood, however, that changesand modifications may be made to the invention without deviating fromthe spirit and scope of the invention, as defined by the followingclaims.

What is claimed is:
 1. A vehicle navigational system having built-inerror correction comprising: (a) a distance-traveled sensor; (b) aheading sensor having a bias that drifts over time; (c) a temperaturesensor; (d) a dead reckoning system having a distance traveled sensorinterface, a heading sensor interface, and a temperature sensorinterface, wherein the dead reckoning component receivesdistance-traveled data from the distance-traveled sensor, heading datafrom the heading sensor, and temperature data from the temperaturesensor; (e) a first computational means for determining whether thevehicle is stationary; (f) a second computational means for estimating acalibration curve for heading sensor bias drift rate when the vehicle isstationary; (g) a third computational means for calculating a firstvehicle heading correction using an estimated bias drift rate tocompensate for first vehicle heading errors induced by heading sensorbias drift; and (h) a fourth computational means for calculating a firstvehicle position correction using the first vehicle heading correctionto compensate for first vehicle position errors induced by headingsensor bias drift.
 2. The apparatus of claim 1 wherein the headingsensor is a gyroscope.
 3. The apparatus of claim 1 wherein the headingsensor is a low-cost gyroscope.
 4. The apparatus of claim 1 wherein theheading sensor is a vibrational gyroscope.
 5. The apparatus of claim 1wherein the distance-traveled sensor is an odometer.
 6. The apparatus ofclaim 1 wherein the dead reckoning component comprises a dead reckoningprocessor, a heading sensor interface, a distance-traveled sensorinterface and a temperature sensor interface.
 7. The apparatus of claim6 wherein the heading sensor interface is a gyroscope interface.
 8. Theapparatus of claim 6 wherein the distance-traveled sensor interface isan odometer interface.
 9. The apparatus of claim 1 further comprising areference vehicle position system.
 10. The apparatus of claim 9 whereinthe reference vehicle position system is a satellite-based positioningsystem.
 11. The apparatus of claim 10 wherein the satellite-basedpositioning system is the global positioning system.
 12. The apparatusof claim 11 wherein the global positioning system component comprises anantenna and a receiver.
 13. The apparatus of claim 12 further comprisinga global positioning system processor.
 14. The apparatus of claim 9further comprising a fifth computational means for combining thecorrected vehicle heading calculated by the dead reckoning system and avehicle heading provided by the reference vehicle position heading intoan integrated vehicle heading and a sixth computational means forcombining the corrected vehicle position calculated by the deadreckoning system and a vehicle position provided by the referencevehicle position heading into an integrated vehicle heading.
 15. Theapparatus of claim 14 wherein the fourth computational means comprises aKalman filter.
 16. The apparatus of claim 14 wherein the fifthcomputational means comprises a Kalman filter.
 17. The apparatus ofclaim 1 further comprising an application specific device.
 18. Theapparatus of claim 17 wherein the application specific device is a unitfor matching the corrected vehicle position with a map contained in theapplication specific device.
 19. The apparatus of claim 18 furthercomprising a unit for displaying the map contained in the applicationspecific device and identifying the corrected vehicle position on thedisplayed map.
 20. The apparatus of claim 17 wherein the applicationspecific device is a transmitter, wherein the transmitter transmits thevehicle position and heading data to a service center having a receiver.21. A method for correcting temperature-dependent sensor drift in avehicle navigational system comprising a distance traveled sensor, aheading sensor, a temperature sensor, and a dead reckoning component,comprising the steps of: (a) transmitting distance-traveled data fromthe distance-traveled sensor to the dead reckoning component and storingthe distance-traveled data in the dead reckoning component; (b)transmitting heading data from the heading sensor to the dead reckoningcomponent and storing the heading data in the dead reckoning component;(c) transmitting temperature data from the temperature sensor to thedead reckoning component and storing the temperature data in the deadreckoning component; (d) transmitting heading sensor bias data from theheading sensor to the dead reckoning component and storing the sensorbias data in the dead reckoning component; (e) determining whether thevehicle is stationary; (f) if the vehicle is stationary, updating anestimate for heading sensor bias drift rate using the data transmittedto and stored in the dead reckoning component; and (g) if the vehicle isnot stationary, using the last estimate of heading sensor bias driftrate to update the estimate of heading sensor bias.
 22. A computerreadable medium having stored therein instructions for causing a centralprocessing unit to execute the method of claim
 21. 23. A method forcorrecting heading and position error induced by temperature-dependentheading sensor drift in a vehicle navigational system comprising adistance traveled sensor, a heading sensor, a temperature sensor, and adead reckoning component, comprising the steps of: (a) transmittingdistance-traveled data from the distance-traveled sensor to the deadreckoning component and storing the distance-traveled data in the deadreckoning component; (b) transmitting heading data from the headingsensor to the dead reckoning component and storing the heading data inthe dead reckoning component; (c) transmitting temperature data from thetemperature sensor to the dead reckoning component and storing thetemperature data in the dead reckoning component; (d) transmittingheading sensor bias data from the heading sensor to the dead reckoningcomponent and storing the sensor bias data in the dead reckoningcomponent; (e) determining whether the vehicle is stationary; (f) if thevehicle is stationary, updating an estimate for heading sensor biasdrift rate using the data transmitted to and stored in the deadreckoning component; and (g) if the vehicle is not stationary, using thelast estimate of heading sensor bias drift rate to update the estimateof heading sensor bias; (h) estimating a vehicle heading using theheading data transmitted to and stored in the dead reckoning componentand the estimated heading sensor bias; (i) estimating a vehicle positionusing the distance-traveled data transmitted to and stored in the deadreckoning component, the estimated vehicle heading, and the estimatedheading sensor bias.
 24. A computer readable medium having storedtherein instructions for causing a central processing unit to executethe method of claim
 23. 25. A method for correcting heading and positionerror induced by temperature-dependent heading sensor drift in a vehiclenavigational system comprising a distance traveled sensor, a headingsensor, a temperature sensor, and a dead reckoning component, comprisingthe steps of: (a) transmitting distance-traveled data from thedistance-traveled sensor to the dead reckoning component and storing thedistance-traveled data in the dead reckoning component; (b) transmittingheading data from the heading sensor to the dead reckoning component andstoring the heading data in the dead reckoning component; (c)transmitting temperature data from the temperature sensor to the deadreckoning component and storing the temperature data in the deadreckoning component; (d) transmitting heading sensor bias data from theheading sensor to the dead reckoning component and storing the sensorbias data in the dead reckoning component; (e) determining whether thevehicle is stationary; (f) if the vehicle is stationary, updating anestimate for heading sensor bias drift rate using the data transmittedto and stored in the dead reckoning component; and (g) if the vehicle isnot stationary, using the last estimate of heading sensor bias driftrate to update the estimate of heading sensor bias; (h) estimating avehicle heading using the heading data transmitted to and stored in thedead reckoning component and the estimated heading sensor bias; (i)estimating a vehicle position using the distance-traveled datatransmitted to and stored in the dead reckoning component, the estimatedvehicle heading, and the estimated heading sensor bias; (j) calculatingan integrated vehicle heading using the estimated vehicle heading andthe global positioning data transmitted to the global positioning systemcomponent; and (k) calculating an integrated vehicle position using theestimated vehicle position and the global positioning data transmittedto the global positioning system component.
 26. A computer readablemedium having stored therein instructions for causing a centralprocessing unit to execute the method of claim
 25. 27. The method ofclaim 21 wherein the method is iterated periodically.
 28. The method ofclaim 27 wherein the method is iterated at a frequency of 1 iterationper second.
 29. The method of claim 21 wherein the step of estimating aheading sensor bias drift rate comprises the steps of: (a) taking afirst measurement of heading sensor bias and a measurement oftemperature when the vehicle reaches a first stationary point, (b)taking a second measurement of heading sensor bias and a secondmeasurement of temperature when the vehicle reaches a second stationarypoint; (c) dividing the difference between the measured bias at thesecond stationary point and the measured bias at the second stationarypoint by the difference between the measured temperature at the secondstationary point and the measured temperature at the second stationarypoint; (d) calculating an average temperature for the two stationarypoints; and (e) using a Kalman filter to estimate to coefficients of amodel of the rate of bias drift in response to change in averagetemperature.
 30. The method of claim 29 further comprising the step ofusing a temperature sensor bias drift rate aging time to forceconvergence of the error variance matrix of the Kalman filter.
 31. Themethod of claim 30 wherein the aging time is updated at each vehiclestationary point.